| GF54.00-P-0005-03A | CAN-Datenbus Fehlererkennung | |
Störungen können bei der Datenübertragung zu Fehlern führen. Solche Übertragungsfehler gilt es zu erkennen und zu beheben. Zwei Ebenen der Fehlererkennung werden beim CAN-Protokoll unterschieden:
Mechanismen auf der Data Frame Ebene
Mechanismen auf der Bit-Ebene
Mechanismen auf der Data Frame Ebene Cyclic-Redundancy-Check: Der Sender errechnet Prüfbits aus der zu sendenden CAN-Botschaft, die im "CRC Field" des Datentelegramms mitgesendet werden. Der Empfänger berechnet diese Prüfbits aus der empfangenen CAN-Botschaft neu und vergleicht sie mit den empfangenen Prüfbits. |
Frame Check:
Dieser Mechanismus prüft die Struktur des übertragenen Rahmens, indem die Bitfelder mit vorgegebenem festem Format sowie die Rahmenlänge überprüft werden. Die durch Frame Checks erkannten Fehler bezeichnet man als Formatfehler. Mechanismen der Bit-Ebene Monitoring: Jede Station beobachtet beim Senden den CAN-Datenbuspegel und erkennt dabei Differenzen zwischen gesendetem und empfangenem Bit. Dadurch können globale und lokal am Sender auftretende Bitfehler sicher erkannt werden. |
| Bit Stuffing:
In jedem Datentelegramm dürfen zwischen "Start of Frame" und dem Ende des "CRC Field" maximal 5 aufeinanderfolgende Bits die gleiche Polarität besitzen. Nach jeweils 5 gleichen Bits in Folge fügt der Sender ein Bit der entgegengesetzten Polarität in den Bitstrom ein. Die Empfänger entfernen diese Bits nach dem CAN-Botschaftsempfang wieder. Fehlerbehandlung Erkennt eine beliebige Station auf dem CAN-Datenbus einen Fehler bricht es die laufende Übertragung durch Senden einer |
Fehlerbotschaft ab. Die Fehlerbotschaft besteht aus 6 dominanten Bits.
Durch die Fehlerbotschaft wird ein lokal aufgetretener Fehler allen angeschlossenen Steuergeräten mitgeteilt, die darauf die gesendete CAN-Botschaft ignorieren. Nach einer kurzen Pause können dann wieder alle Steuergeräte senden, wobei sich wieder die CAN-Botschaft mit der höchsten Priorität durchsetzt. Das Steuergerät, dessen CAN-Botschaft den Fehler verursacht hat, beginnt ebenfalls seine CAN-Botschaft erneut zu senden (Automatic Repeat Request). |